package com.chinafree.business.service;

import com.chinafree.auth.model.bo.LoginUserBo;
import com.chinafree.auth.model.result.LoginResult;
import com.chinafree.business.model.param.BaseUserParam;
import com.chinafree.business.model.param.FilesUserParam;
import com.chinafree.business.model.param.ResumeUserParam;
import com.chinafree.business.model.queryCondition.UserQueryCondition;
import com.chinafree.business.model.result.BaseUserResult;
import com.chinafree.business.model.result.UserBaseMessageResult;
import com.chinafree.common.model.response.BaseResponse;
import com.chinafree.common.model.response.EntityResponse;
import com.chinafree.common.model.response.ListPagingResponse;

import java.util.List;
import java.util.Optional;

public interface ResumeService {

    EntityResponse<LoginResult> updateUserCompany(String token);

    BaseResponse updateBaseUser(BaseUserParam body) ;

    EntityResponse<UserBaseMessageResult> getByUserId(Long userId);

    List<BaseUserResult> getHRsByCompanyIds();

//     EntityResponse<BaseUserResult> getUserBaseInfoById(Long userId);
//
//     EntityResponse<UserResumeResult> getUserResumeById(Long userId);
//
//    BaseResponse insertBaseUser(BaseUserParam body);

    BaseResponse updateResumeUser(ResumeUserParam body);

    BaseResponse updateFileUser(List<FilesUserParam> body);

    ListPagingResponse<UserBaseMessageResult> queryUserPage(UserQueryCondition userQueryCondition);

    BaseResponse updateResumeStatus(Byte status);
}
